2024年9月にリリースされたSnowflakeの新機能・変更点のまとめ #SnowflakeDB
2024年9月にリリースされたSnowflakeの新機能・変更点のまとめ記事になります。
※注意事項:本記事ではすべての情報についての記述はせず、特筆すべきだと感じた情報だけピックしております。基本的には以下の情報を参考にしておりますので、全ての最新情報を確認したい場合は下記のURLからご確認ください。
September 26, 2024 — Snowpark-optimized Warehouse RESOURCE_CONSTRAINT — Preview
Snowpark 用に最適化されたウェアハウスのリソース制約がパブリックプレビューとなりました。Snowpark用に最適化されたウェアハウスに対してRESOURCE_CONSTRAINT
パラメータを指定すると、ウェアハウスのメモリと CPU アーキテクチャを指定できます。
以下は公式ドキュメントからの引用ですが、デフォルトではMEMORY_16X
となります。
これまで Snowpark 用に最適化されたウェアハウスの作成には M サイズ以上がサポートされていましたが、例えば以下のコマンドでウェアハウスを作成すると XS サイズとして作成されていました。
CREATE OR REPLACE WAREHOUSE snowpark_opt_wh WITH
WAREHOUSE_TYPE = 'SNOWPARK-OPTIMIZED'
RESOURCE_CONSTRAINT = 'MEMORY_1X';
詳細は以下をご参照ください。
September 25, 2024 — Snowflake Feature Store — General Availability
Snowflake Feature Store が一般提供となりました。Snowflakes Feature Store を使用することで、特徴量エンジニアリングにおいてよく使用される変換処理を中央リポジトリで登録・維持でき、再利用が可能となります。詳細は以下をご参照ください。
Snowflake Feature Store に関するクイックスタートも提供されていますのでこちらもご活用ください。
September 25, 2024 — New models available in Snowflake Cortex AI
Snowflake Cortex LLM ベース関数の COMPLETE で以下のモデルがサポートされました。
- jamba-1.5-large
- llama3.2-1b
- llama3.2-3b
2024/10/4時点では AWS US West 2 (Oregon) リージョンのアカウントで使用可能です。異なるアカウントをご利用の場合は、Cross-region inference により推論リクエストをデフォルト リージョンとは異なるリージョンで処理できます。
September 24, 2024 — DOCUMENT_AI_USAGE_HISTORY view — General Availability
Document AI のジョブ履歴をクエリできる ACCOUNT_USAGE スキーマの DOCUMENT_AI_USAGE_HISTORY ビューが一般提供となりました。詳細は以下をご参照ください。
September 23-26, 2024 — 8.36 Release Notes
Cloning support for Snowflake-managed Apache Iceberg™ tables — Preview
Snowflake 管理の Iceberg テーブルのクローン作成がパブリックプレビューとなりました。詳細は以下をご参照ください。
September 18-20, 2024 — 8.35 Release Notes
RANGE BETWEEN support for FIRST_VALUE and LAST_VALUE functions
Snowflake では行の他に RANGE ベースのウィンドウ フレームをサポートしています。それぞれウィンドウ内の最初、最後の値を返す FIRST_VALUE, LAST_VALUE も使用でき、これまでは ROWS ベースのウィンドウフレームのみをサポートしていましたが、アップデートで RANGE ベースのウィンドウフレームでも使用できるようになりました。これにより、指定した範囲内の最初・最後の値を柔軟に取得できます。
以下のように使用でき、ここでは特定の時間範囲内のウィンドウから最初・最後の値を取得しています。
SELECT
city, start_time,precip,
FIRST_VALUE(precip) OVER (PARTITION BY city ORDER BY start_time
RANGE BETWEEN CURRENT ROW AND INTERVAL '3 hours' FOLLOWING) AS FIRST_VAL,
LAST_VALUE(precip) OVER (PARTITION BY city ORDER BY start_time
RANGE BETWEEN CURRENT ROW AND INTERVAL '3 hours' FOLLOWING) AS LAST_VAL
FROM weather_data
ORDER BY city, start_time;
出力
+-------------+-------------------------+--------+-----------+----------+
| CITY | START_TIME | PRECIP | FIRST_VAL | LAST_VAL |
+-------------+-------------------------+--------+-----------+----------+
| Bakersfield | 2021-12-30 11:23:00.000 | 0.15 | 0.15 | 0.25 |
| Bakersfield | 2021-12-30 11:43:00.000 | 0.85 | 0.85 | 0.25 |
| Bakersfield | 2021-12-30 13:53:00.000 | 0.25 | 0.25 | 0.31 |
| Bakersfield | 2021-12-30 14:53:00.000 | 0.12 | 0.12 | 0.31 |
| Bakersfield | 2021-12-30 15:15:00.000 | 0.31 | 0.31 | 0.31 |
| Lebec | 2021-12-30 11:23:00.000 | 0.12 | 0.12 | 0.23 |
| Lebec | 2021-12-30 11:43:00.000 | 0.98 | 0.98 | 0.23 |
| Lebec | 2021-12-30 13:53:00.000 | 0.23 | 0.23 | 0.29 |
| Lebec | 2021-12-30 14:53:00.000 | 0.13 | 0.13 | 0.1 |
| Lebec | 2021-12-30 15:15:00.000 | 0.29 | 0.29 | 0.1 |
| Lebec | 2021-12-30 17:53:00.000 | 0.1 | 0.1 | 0.07 |
| Lebec | 2021-12-30 18:53:00.000 | 0.09 | 0.09 | 0.07 |
| Lebec | 2021-12-30 19:53:00.000 | 0.07 | 0.07 | 0.07 |
| Lebec | 2021-12-30 20:53:00.000 | 0.07 | 0.07 | 0.07 |
+-------------+-------------------------+--------+-----------+----------+
pandas on Snowflake - General Availability
pandas on Snowflake が一般提供となりました。pandas on Snowflake は Snowpark Python ライブラリの一部として Snowpark pandas API を通じて提供されます。使い慣れた native pandas のインターフェースを利用しつつ、コンピュートも Snowflake 内で実行されるためデータの移動もありません。
詳細は以下をご参照ください。
Apache Iceberg™ tables: Automated refresh — Preview
外部カタログを使用する Apache Iceberg テーブルの自動メタデータ更新がパブリックプレビューとなりました。これまで、メタデータファイルの更新には ALTER ICEBERG TABLE の実行が必要でしたが、このアップデートにより CREATE ICEBERG TABLE コマンドのオプションとしてAUTO_REFRESH = TRUE
とすることで Snowflake は外部 Iceberg カタログを継続的にサーバーレスでポーリングし、メタデータファイルを自動更新します。
詳細は以下をご参照ください。
September 12, 2024 — New Cortex LLM Function - CLASSIFY_TEXT — Preview
Snowflake Cortex LLM ベース関数に CLASSIFY_TEXT が追加されました。CLASSIFY_TEXT はテキストデータを、ユーザーが指定したカテゴリのいずれかに分類します。
詳細は以下の記事をご参照ください。
September 09-11, 2024 — 8.34 Release Notes
Dynamic tables: New DYNAMIC_TABLE_REFRESH_HISTORY account usage view
ACCOUNT_USAGE スキーマに新しい DYNAMIC_TABLE_REFRESH_HISTORY ビューが追加されました。このビューでは、更新ステータスやリフレッシュ時のアクション(Full refresh や INCREMENTAL など)などの最大 1 年間の動的テーブルの更新履歴に関する情報をクエリできます。
September 04, 2024 — Calling stored procedures in the FROM clause of SELECT statements
SELECT 文内の FROM 句で表形式のデータを返すストアドプロシージャを直接呼び出すことができるようになりました。これまではストアドプロシージャからテーブル形式の出力をクエリしたい場合は RESULT_SCAN を使用する必要がありました。
CALL find_orders_by_user_id('user_id_001');
SELECT * FROM TABLE(RESULT_SCAN(-1));
このアップデートで以下のように FROM 句から直接呼び出し、クエリができるようになりました。
SELECT * FROM TABLE(find_orders_by_user_id('user_id_001'));
CREATE TABLE AS SELECT や COPY INTO などの FROM 句内でも使用可能です。なお、DDL または DML 操作を使用して変更を行うストアド プロシージャの FROM 句での呼び出しは引き続き許可されません。制約は以下に記載があります。
September 01, 2024 — New Snowflake region
Snowflake の中国リージョンが一般提供となりました。アカウントは、AWS の中国(寧夏)にリージョン上でホストされます。中国リージョンは Snowflake の認定運営パートナーである Digital China Cloud Technology Limited(DCC)により運営されており、利用には DCC と別途契約が必要です。
また、既存の Snowflake アカウントから中国リージョンのリソースにアクセスすることはできません。その逆も同様です。
おまけ:Modern Data Stack全般の最新情報
Snowflakeも含め、Modern Data Stack 全般の最新情報についても、定期的にブログにまとめて投稿されています!こちらもぜひご覧ください。